package cn.eu.mqtt.model.notice;

import lombok.Getter;
import lombok.Setter;

/**
 * 通知-车辆状态信息
 */
@Getter
@Setter
public class VehicleInfo {
    /**
     * 时间戳
     */
    private String timestamp;
    /**
     * ECU信息
     */
    private ECU ECU;

    @Getter
    @Setter
    public static class ECU {
        /**
         * 车辆类别的名称，如小型摩托车、电动自行车
         */
        private String vehicleType;
        /**
         * 车电池百分比
         * 0% - 100%
         */
        private Integer sysSoc;
        /**
         * 速度模式 <br/>
         * 1 - 低速 <br/>
         * 2 - 中速 <br/>
         * 3 - 高速 <br/>
         */
        private Integer speedMode;
        /**
         * 当前速度KM/H
         */
        private Integer speedKmh;
        /**
         * 单程行驶里程
         */
        private String singleRideMile;
        /**
         * 总里程m
         */
        private String runTotalMile;
        /**
         * 剩余总里程（10m）
         */
        private String remainingMileage;
        /**
         * 行驶时间，单位：S
         */
        private String runTime;
        /**
         * 充电状态 0-不充电 1-充电
         */
        private Integer charging;
        /**
         * 车辆状态 0-已锁定 1-已解锁
         */
        private Integer vehicleState;
        /**
         * 锁定状态，三位字符“0101”。第一位表示钢索锁状态，第二位表示电池锁状态，第三位表示头盔锁状态，第四位表示轮毂锁状态。<br/>
         * 0-已锁定的状态 <br/>
         * 1-解锁 <br/>
         */
        private Integer lockState;
        /**
         * 错误码
         */
        private Integer errorCode;
        /**
         * 二维码，最多包含32个字符
         */
        private String QRCode;
    }

}
